// import { Inject, Get, Query } from '@midwayjs/core';
// import {
//   CoolController,
//   BaseController,
//   CoolTag,
//   TagTypes,
// } from '@cool-midway/core';

// /**
//  * App端-设备状态监控
//  */
// // @CoolTag(TagTypes.IGNORE_TOKEN)
// @CoolController({
//   api: ['list', 'info'],
//   entity: AutomationDeviceStatusEntity,
//   service: AutomationDeviceStatusService,
// })
// export class AppAutomationDeviceStatusController extends BaseController {
//   @Inject()
//   automationDeviceStatusService: AutomationDeviceStatusService;

//   /**
//    * 获取设备最新状态
//    */
//   @Get('/latest', { summary: '获取设备最新状态' })
//   async getLatestStatus(@Query('deviceId') deviceId?: string) {
//     if (deviceId) {
//       const status =
//         await this.automationDeviceStatusService.getLatestDeviceStatus(
//           deviceId
//         );
//       return this.ok(status);
//     } else {
//       const statuses =
//         await this.automationDeviceStatusService.getAllLatestDeviceStatus();
//       return this.ok(statuses);
//     }
//   }

//   /**
//    * 获取设备历史状态
//    */
//   @Get('/history', { summary: '获取设备历史状态' })
//   async getDeviceHistory(
//     @Query('deviceId') deviceId: string,
//     @Query('startTime') startTime?: string,
//     @Query('endTime') endTime?: string,
//     @Query('limit') limit: number = 100
//   ) {
//     const history = await this.automationDeviceStatusService.getDeviceHistory(
//       deviceId,
//       startTime ? new Date(startTime) : undefined,
//       endTime ? new Date(endTime) : undefined,
//       limit
//     );
//     return this.ok(history);
//   }

//   /**
//    * 获取在线设备列表
//    */
//   @Get('/online', { summary: '获取在线设备列表' })
//   async getOnlineDevices() {
//     const devices = await this.automationDeviceStatusService.getOnlineDevices();
//     return this.ok(devices);
//   }

//   /**
//    * 获取离线设备列表
//    */
//   @Get('/offline', { summary: '获取离线设备列表' })
//   async getOfflineDevices() {
//     const devices =
//       await this.automationDeviceStatusService.getOfflineDevices();
//     return this.ok(devices);
//   }

//   /**
//    * 获取设备状态统计
//    */
//   @Get('/statistics', { summary: '获取设备状态统计' })
//   async getStatistics() {
//     const statistics =
//       await this.automationDeviceStatusService.getDeviceStatistics();
//     return this.ok(statistics);
//   }

//   /**
//    * 获取设备状态变化趋势
//    */
//   @Get('/trend', { summary: '获取设备状态变化趋势' })
//   async getStatusTrend(
//     @Query('deviceId') deviceId: string,
//     @Query('days') days: number = 7
//   ) {
//     const trend = await this.automationDeviceStatusService.getDeviceStatusTrend(
//       deviceId,
//       days
//     );
//     return this.ok(trend);
//   }

//   /**
//    * 获取设备类型列表
//    */
//   @Get('/deviceTypes', { summary: '获取设备类型列表' })
//   async getDeviceTypes() {
//     return this.ok([
//       { label: '传感器', value: 'sensor' },
//       { label: '执行器', value: 'actuator' },
//       { label: '控制器', value: 'controller' },
//       { label: '网关', value: 'gateway' },
//       { label: '其他', value: 'other' },
//     ]);
//   }

//   /**
//    * 获取设备状态类型
//    */
//   @Get('/statusTypes', { summary: '获取设备状态类型' })
//   async getStatusTypes() {
//     return this.ok([
//       { label: '在线', value: 'online' },
//       { label: '离线', value: 'offline' },
//       { label: '故障', value: 'error' },
//       { label: '维护', value: 'maintenance' },
//     ]);
//   }
// }
